Colours can be deterministically defined by a distribution of light intensities at different wavelengths in the visible spectrum (i.e. between around 400 nm and 700 nm). However, the way in which we perceive and usually record colour is subjective. For example, our eyes and most conventional photographic methods are more sensitive to light at some wavelengths than others. This means that light at certain wavelengths has greater influence on our perception or recordal of colour than others. Similarly, whilst an object tends to reflect light at different wavelengths by consistent proportions defined by the reflectance spectrum of the object, the actual colour of light reflected by the object also depends on the intensity at different wavelengths of light by which the object is illuminated, e.g. the illumination spectrum. As the illumination spectrum will tend to change, e.g. according to the time of day or according to the location of the object, the object may therefore be perceived or photographed with a variety of different colours. So, it is widely recognised that colours of objects can only be completely defined by their reflectance spectra. Much effort has therefore been expended in developing methods of recording and estimating reflectance spectra. These recorded or estimated reflectance spectra are useful for a variety of scientific and technical purposes. They can also be used for image processing. For example, it has been suggested to convert images of objects recorded in a given colour space, e.g. a Red Green Blue (RGB) signal of a digital camera, to another colour space, e.g. Cyan Magenta Yellow black (CMYK) ink dot quantities of a printer, using the estimated reflectance spectra of the objects.
For example, reflectance spectra can be measured using an apparatus known as a spectroradiometer or spectrophotometer. The spectrophotometer splits light reflected from an object into different component wavelengths, e.g. using a prism or diffraction grating, and measures the light intensity at each component wavelength. The illumination spectrum incident on the object is usually also measured, e.g. by measuring light reflected from an object having neutral reflectance characteristics, such as a piece of matt white card. The reflectance spectrum of the object can then be deduced. Whilst this is generally effective, spectrophotometers are complex and expensive. They are also poor at generating images. More specifically, in order to generate a two-dimensional image, a separate measurement must be performed for each pixel of the image. Most spectrophotometers can only make one measurement at a time, with the result that image generation is at best an incredibly slow process.
Spectrophotometers that are able to measure the spectral characteristics of many pixels of an image at once are available and are generally known as hyper-spectral imaging systems. However, these are very complex and expensive. They also require a reasonable amount of expertise to operate effectively, making them unsuitable for many commercial uses.
Methods of estimating reflectance spectra from images captured by conventional photographic equipment have also been explored. So-called multi-spectral imaging systems usually comprise conventional cameras equipped with multiple filters. Each filter only allows a limited range of wavelengths of light to pass. By capturing an image of an object through the different filters, spectral information about the object can be deduced. However, multi-spectral imaging systems are generally laborious to operate and can only record limited spectral information.
WO2003/030524 describes a method of estimating reflectance spectra from RGB signals of a digital camera. An RGB signal is converted to a spectrum using knowledge of the illumination spectrum and the sensitivity of the digital camera to different wavelengths of light. Weighting is applied to improve the smoothness and colour constancy of the spectrum to produce an estimated reflectance spectrum. In order for this method to be effective, the illumination spectrum must be known precisely. The camera therefore photographs objects in a closed box, inside which is a light source producing a known illumination spectrum. This is clearly impractical in many situations, such as when it is desired to photograph an object in situ. Furthermore, the sensitivity of the digital camera to different wavelengths of light is defined by three different sensitivity functions, broadly for red, green and blue light, with the levels of response of the camera for each sensitivity function making up values for each of the red, green and blue components of the RGB signal. Even with precise knowledge of the sensitivity functions, the RGB signal does not therefore allow complete reconstruction of the spectrum of light received by the camera. Rather, some information about the spectrum of light received by the camera is lost. So, despite the weighting to improve the smoothness and colour constancy of the estimated reflectance spectrum, the method inevitably produces only approximate reflectance spectra estimations.
The paper “Characterisation of natural illuminants in forests and the use of digital video data to reconstruct illuminant spectra”, Chiao et al, Journal of the Optical Society of America, Vol. 17, No. 10, October 2000, shows that RGB signals of a digital camera can be mapped onto a family of known illuminant spectra. RGB signals representing the illuminant spectra are generated using the digital camera at the same time as the illuminant spectra are measured using a spectrophotometer. A linear transform is then derived between the RGB signals representing the illuminant spectra and the illuminant spectra as measured by the spectrophotometer using a least-squares procedure. Whilst this method obtains good results, it only applies to a closely related family of illuminant spectra. In order to apply the method to different illuminant spectra, RGB signals representing the different illuminant spectra must be generated using the digital camera and the different illuminant spectra must be measured using the spectrophotometer. Furthermore, the derived transform is specific to the particular digital camera used to generate the RGB signals. If it is desired to use RGB signals representing the illuminant spectra generated by a different camera, a new transform must be derived. In order for the new transform to be accurate, the illuminant spectra must be measured again using the spectrophotometer at the same time as the RGB signals representing the illuminant spectra are generated using the new digital camera. The method is therefore time consuming and impractical. This paper is also limited to the consideration of illuminant spectra, rather than the more complex problem of estimating reflectance spectra of objects.
WO2004/012442 describes a method of converting an image from RGB signals to CMYK ink dot quantities of a printer using estimated reflectance spectra. The reflectance spectra can be measured using a multi-spectral imaging device. Alternatively, in its fourth embodiment, WO2004/012442 describes estimating reflectance spectra from RGB signals using reference reflectance spectra stored in a database. An RGB signal representing a pixel of an image is converted into tristimulus values L*, a*, b* (which represent colours in a similar way to RGB signals but using a standard defined by the Commission Internationale d'Eclairage (CIE)) using knowledge of a model light source selected by a user. Likewise, tristimulus values L*, a*, b* are calculated for the reference reflectance spectra stored in the database. The reference reflectance spectrum in the database having tristimulus values L*, a*, b* closest to those of the pixel is then identified as the estimated reflectance spectrum of the pixel. In a fifth embodiment, it is suggested to allow users to select a category of reference reflectance spectra in the database, e.g. relating to flesh, flowers or such like, to narrow the comparison. This method may be effective in some circumstances. However, the comparison of tristimulus values L*, a*, b* to identify an appropriate reflectance spectrum can be inaccurate. In particular, different spectral sensitivities of different cameras that produce the RGB signals and differences between the actual illumination spectrum illuminating an object and the illumination spectrum of the model light source selected by the user can cause large inaccuracies in the calculated tristimulus values L*, a*, b*. The comparison is therefore likely frequently to identify an incorrect reflectance spectrum. So, likewise, the image conversion process can also be inaccurate.
The present invention seeks to overcome these problems.